package com.shiyun.disaster_station.utils;

import com.obs.services.ObsClient;
import lombok.extern.log4j.Log4j2;
import org.springframework.stereotype.Component;

import java.io.File;

/**
 * 类 描 述: 文件服务
 * 作   者: 史 云
 * @author 史 云
 * 版   本: 1.0.0
 * 时   间: 2021年12月07日  15:22:00
 */
@Component
@Log4j2
public class FileService {

    /**
     * 方法描述: 文件上传
     * 作   者: 史 云
     * 时   间: 2021年12月07日 15:25:00
     */
    public String uploadFile(File param){
        return doUpload("tmp/"+System.currentTimeMillis()+"/"+param.getName(),param);
    }

    /**
     * 方法描述: 上传文件
     * 作    者: 史 云
     * 时    间: 2022年06月07日  15:52:06
     */
    private String doUpload(String dir, File file) {
        String endPoint = "obs.cn-east-3.myhuaweicloud.com";
        String ak = "HHW18T3UMX8X7WU0JC3L";
        String sk = "JDQAqPpd8nYXsQJ9f8qk62Xm7GdHLz0C2RQDJPHn";
        String bucketName = "njctbucket";
        // 创建ObsClient实例
        ObsClient obsClient = new ObsClient(ak, sk, endPoint);
        // localfile为待上传的本地文件路径，需要指定到具体的文件名
        obsClient.putObject(bucketName, dir, file);
        String url = "https://obs.chengtiexinxi.com/" + dir;
        System.out.println(url);
        return url;
    }

}
